// result.ts
import Toast from 'tdesign-miniprogram/toast/index';

interface ImageData {
  id: number;
  imageUrl: string;
  promptText: string;
  negativePromptText?: string;
}

Page({
  data: {
    imageData: {
      id: 0,
      imageUrl: '',
      promptText: '',
      negativePromptText: ''
    } as ImageData,
    isPublishing: false
  },

  onLoad(options) {
    // 从URL参数或本地存储中获取图片数据
    const imageId = options.id;
    let imageData: ImageData;
    
    if (imageId) {
      // 如果有ID，尝试根据ID从服务器或本地存储获取数据
      // 这里简单模拟
      imageData = {
        id: Number(imageId),
        imageUrl: `https://picsum.photos/600/600?random=${imageId}`,
        promptText: '示例提示词 #' + imageId
      };
    } else {
      // 从本地存储获取当前图片数据
      imageData = wx.getStorageSync('currentImageData');
      if (!imageData) {
        // 如果没有数据，返回创建页面
        wx.navigateBack();
        return;
      }
    }
    
    this.setData({
      imageData
    });
  },

  // 返回上一页（创建页面）
  onBack() {
    wx.navigateBack();
  },

  // 重新生成（返回创建页面）
  onRegen() {
    wx.navigateBack();
  },

  // 发布图片
  onPublish() {
    this.setData({
      isPublishing: true
    });
    
    // 显示加载状态
    Toast({
      context: this,
      selector: '#t-toast',
      message: '正在发布...',
      theme: 'loading',
      duration: 1000
    });
    
    // 模拟发布过程
    setTimeout(() => {
      // 发布成功后跳转到首页
      Toast({
        context: this,
        selector: '#t-toast',
        message: '发布成功！',
        theme: 'success',
        duration: 1000,
        onClose: () => {
          this.setData({
            isPublishing: false
          });
          wx.switchTab({
            url: '/pages/index/index'
          });
        }
      });
    }, 1000);
  }
}) 